#ifndef QNMSETTINGS_H
#define QNMSETTINGS_H

#include <QObject>
#include <QSettings>
#include <QStringList>

class QNMSettings : public QSettings
{
    Q_OBJECT

    QString group_main;
    QString key_language;
    QString key_orientation;
    QString key_datatimeformat;
    QString key_theme;

    QString group_monitor;
    QString key_graph_type;
    QString key_show_marker;
    QString key_show_rx;
    QString key_show_tx;
    QString key_timestamp;
    QString key_color_rx;
    QString key_color_tx;
    QString key_refresh_interval;
    QString key_iface_monitor;
    QString key_list_ifaces;

public:
    explicit QNMSettings(QObject *parent = 0);

    void setTypeGraphStat();
    void setTypeGraphTime();
    int getTypeGraph();

    void showMarker( const bool isShow );
    bool isShowMarker( );

    void showRX( const bool isShow );
    bool isShowRX();

    void showTX( const bool isShow );
    bool isShowTX();

    void setTimestamp( const int ts );
    int getTimestamp();

    void setRefreshInterval( const int ri );
    int getRefreshInterval();

    void setIfaceMonitor( const QString &iface );
    QString getIfaceMonitor();

    void setColorRX( const QString &color );
    QString getColorRX();

    void setColorTX( const QString &color );
    QString getColorTX();
    
    void setListIfaces( const QStringList &listIfaces );
    QStringList getListIfaces();

    void setDataTimeFormat(const QString& dt_format);
    QString getDataTimeFormat();

    void setLanguage( const QString &ri );
    QString getLanguage();

    void setTheme( const QString &theme );
    QString getTheme();

    void setOrientation( const QString &value );
    QString getOrientation();
signals:
    
public slots:
    
};

#endif // QNMSETTINGS_H
